const express = require('express')

const {
	listTemplate,
	addTemplate,
	updateTemplate,
	removeTemplateById,
	checkTemplateByModuleApiId,
} = require('../modules/module-template')

const router = express.Router()

// /ult/template/list
router.post('/template/list', function(req, res, next) {
	return listTemplate().then(result => {
		res.type('json').send(result)
	})
})

// /ult/template/add
router.post('/template/add', function(req, res, next) {
	return addTemplate(req.body).then(result => {
		res.type('json').send(result)
	})
})

// /ult/template/update
router.post('/template/update', function(req, res, next) {
	return updateTemplate(req.body).then(result => {
		res.type('json').send(result)
	})
})

// /ult/template/delete
router.post('/template/delete', function(req, res, next) {
	return removeTemplateById(req.body.template_id).then(result => {
		res.type('json').send(result)
	})
})

// /ult/template/check
router.post('/template/check', function(req, res, next) {
	let module_api_id = req.body.module_api_id
	console.log('module_api_id', module_api_id)
	return checkTemplateByModuleApiId(module_api_id).then(result => {
		console.log('result', result)
		res.type('json').send(result || {})
	})
})

// /ult/template/list/tree
// router.post('/template/list/tree', function(req, res, next) {
// 	return listTemplate().then(list => {
// 		let treeDataMap = {}
// 		for (let val of list) {
// 			treeDataMap[val.project_id] = treeDataMap[val.project_id] || {
// 				id: 

// 			}

// 		}
// 		res.type('json').send(treeData)
// 	})
// })

module.exports = router